home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 April
/
EnigmA AMIGA RUN 17 (1997)(G.R. Edizioni)(IT)[!][issue 1997-04][EAR-CD].iso
/
EARCD
/
docs
/
mags
/
F0NT01.lha
/
texts
/
szgyt2.fht
< prev
next >
Wrap
Text File
|
1995-04-11
|
6KB
|
103 lines
BG stonebg.iff
COLUMN 1
LIMIT 10 5 635 200
§TEXT
§PG
§SHCOL 0
§FONT 3 §CENTER §SH+ §COL 15
§I+ A villamosmérnök és a programozó §I-
§FONT 1
§PG §PG §SPACES 2 §FILL §SH-
Egyszer volt, hol nem volt, az információtengeren túl, a digitális üveghegyen
is túl, élt egyszer egy király. Egy szép napon a király úgy döntött, hogy
próbára teszi két legtapasztaltabb tanácsadóját, a villamosmérnököt és a
programozót. Magához hívatta tehát õket, és eléjük tett egy kis fényes
dobozt, aminek a tetején két hosszúkás nyílás volt, az oldalán pedig egy
fekete gomb és egy emelõkar. §I+ "Mit gondoltok, mi ez?" §I- - kérdezte a
király a tanácsadókat.
§PG §PG §SPACES 2
Elsõként a villamosmérnök szólalt meg. §I+ "Fenség, ez egy pirítóssütõ." §I-
§PG §PG §SPACES 2
- §I+ "Rendben van. Hogyan oldanád meg a pirítóssütõ számítógépes vezérlését?"
§I- - kérdezte a király.
§PG §SPACES 2
§I+ "Természetesen egy nyolcbites mikrokontrollerrel. Írnék egy kis programot,
ami beolvasná a gomb állását, és ennek alapján kiválasztana egyet a tizenhat
elõre definiált pirítósfajta (halvány barna, közepesen barna, nagyon barna,
fekete, nagyon fekete... szénné égett) közül. Mind a tizenhat
pirítósfajtához tartozna egy-egy számlálóérték, amit egy ROM-ba égetett
táblázat tartalmazna. A program kiolvasná a táblázatból a gomb állásához
tartozó számlálóértéket, és ennek megfelelõ ideig melegítené a fûtõszálakat.
A pirítás befejeztével kikapcsolná a fûtést és kidobná a kész pirítóst. A
jövõ hétre készen is leszek a prototípussal." §I-
§PG §PG §SPACES 2
A programozó azonnal felismerte a villamosmérnök rövidlátó gondolkodásának
korlátjait. Így szólt a királyhoz: §I+ "Fenség, a pirítóssütõt nem csak
kenyérpirításra lehet használni. Meg lehet például melegíteni vele a
gyorsfagyasztott pizza szeleteket. Ez a doboz valójában nem egyszerûen
pirítóssütõ, hanem egy univerzális reggelikészítõ berendezés. Ahogy
királyságod fejlõdik, alattvalóid egyre újabb szolgáltatásokat fognak
követelni. Olyan reggelikészítõt szeretnének majd, amivel virslit is lehet
fõzni, szalonnát sütni, vagy rántottát készíteni. Egy egyszerû pirítóssütõ
nagyon gyorsan elavulttá válik. Ha nem vesszük figyelembe a fejlõdés
irányát, akkor néhány éven belül teljesen át kell majd terveznünk a
pirítóssütõt."
§PG §PG §SPACES 2
"Ha tekintettel vagyunk erre a tényre, akkor egy sokkal intelligensebb
megoldást is találhatunk. Elõször is vezessük be a reggelire fogyasztott
ételek osztályát. Származtassunk ebbõl három alosztályt: a liszt, sertés,
illetve baromfi ételek osztályát. A mûvelet további ismétlésével a liszt
osztályából létrehozzuk a pirítós, a zsemle és a pizza osztályt, a sertés
osztályból a sonka, virsli és szalonna osztályt, a baromfiból pedig a
rántotta, tükörtojás, lágytojás, keménytojás és a különféle omlettek
osztályát."
§PG §PG §SPACES 2
"A sonkás tojás külön figyelmet érdemel, mivel a sertés, a tejtermék, és a
baromfi osztályokból is örököl tulajdonságokat. Látható, hogy a probléma
többszörös öröklõdés nélkül nem kezelhetõ egzakt módon."
§PG §PG §SPACES 2
"A reggelikészítõ mûködése a bevezetett formalizmus segítségével rendkívül
leegyszerûsödik: a program futási idõben létrehozza a megfelelõ objektumot
és "Süsd meg magad" üzenetet küld neki. Az üzenet szemantikája természetesen
a konkrét objektumtól függ, tehát mást jelent pirítós esetén és mást rántotta
esetén."
§PG §PG §SPACES 2
"Áttekintve az eddigieket megállapítható, hogy az analízis fázisában
felállítottunk egy alapkövetelményt: a berendezésnek tetszõleges reggelire
fogyasztható étel megsütésére alkalmasnak kell lennie. A tervezés fázisában
néhány további követelményt is meghatározunk. Például: szükségünk van egy
olyan objektumorientált programozási nyelvre, amely megengedi a többszörös
öröklést. A felhasználók természetesen nem szeretnék, hogy a rántotta
kihûljön, miközben sül a pirítós, nyilvánvaló tehát, hogy párhuzamos
feldolgozásra van szükség".
§PG §PG §SPACES 2
"Nem szabad elfeledkeznünk a felhasználói felületrõl sem. A pirítós
kiemelésére szolgáló kar nem eléggé univerzális, a gomb pedig félreérthetõ.
A felhasználók csak akkor fogják megvenni a terméket, ha az felhasználóbarát,
azaz grafikus felhasználói felülete van. Bekapcsolás után egy hurkatöltõ
jelenne meg a képernyõn, amire rákattintva az egérrel, a reggelikészítõ
§PG §SPACES 2
§B+ "Az operációs rendszer töltése folyamatban van..." §B- üzenetet írná ki.
A felhasználók ezután egy párbeszédpanelen megjelenõ listából az egér
segítségével választhatnák ki, hogy mit szeretnének reggelizni."
§PG §PG §SPACES 2
"Mivel a szükséges szoftvert elõrelátóan már a tervezési fázis kezdetén
meghatároztuk, már csak annyi van hátra, hogy kiválasszuk a megvalósításhoz
szükséges hardvert. Egy 120 Megahertzes Intel Pentium, 16 Megabájt
memóriával, 200 Megabájt merevlemez-kapacitással és SuperVGA monitorral
valószínûleg megfelelne a célnak. Ha többfeladatos, objektumorientált,
beépített grafikus felülettel rendelkezõ korszerû operációs rendszert
választunk, akkor a mûködtetõ szoftver megírása már igazán semmiség.
Gondoljunk arra, hogy most milyen komoly nehézségeink lennének, ha rövidlátó
módon elõször a hardvert választottuk volna ki, és most egy nyolcbites
mikrokontrollerrel szenvednénk!" §I-
§NEWPAGE §SPACES 2
Miután a király mindkét tanácsadóját meghallgatta, lefejeztette a
programozót, és azóta is boldogan élnek ha meg nem haltak.
§PG §PG §RIGHT
Forrás:
§PG §B+ http://www.cs.bgu.ac.il/~omri/Humor/SoftEng.html
§PG §B- Magyar fordítás: §B+ Mörk Péter, 1996